#ifndef __DNCODETABLE_H
#define	__DNCODETABLE_H

#include "../../slim/codetable/CCCPUCodeTable.h"


template <ItemSetType T>
class CombinedCodeTable : public CCCPUCodeTable<T> {
public:
    CombinedCodeTable();
    
    virtual uint32* GetAlphabetUsage(uint32 alphabetId);
    virtual uint32 GetNumItemSets();
    virtual uint32 GetOldAlphabetCount(uint32 alphabetId);
    virtual uint32 GetSumUsageCounts();
    virtual void UseThisStuff(Database *db, ItemSetType type, CTInitType ctinit, uint32 maxCTElemLength = 0, uint32 toMinSup = 0);
    
protected:
    double CalcEncodedDbSize();
};

#endif	/* __DNCODETABLE_H */
